/*
 * table_CodeScope.h
 *
 *  Created on: 2012/03/30
 *      Author: guanxiaoying
 */

#ifndef TABLE_CODESCOPE_H_
#define TABLE_CODESCOPE_H_
typedef struct {
	AST fileindex;
	S4  beginLine;
	S4  endLine;
	U2  offset_begin;
	U2  offset_end;
}CODESCOPE_CMP;

typedef struct {
	BOOL (*clear)( VOID );
	BOOL (*reset)( VOID );
	BOOL (*alloc)( AST );
	BOOL (*copy)( AST, AST, AST );
	AST  (*getMax)( VOID );
	AST  (*mergeCodeScp)( AST, AST );
	AST  (*getCodeScp)(  CODESCOPE_CMP * );
	ACCESS_U2_FIELD startOffset;
	ACCESS_U2_FIELD endOffset;
	ACCESS_IDX_FIELD fileindex;
	ACCESS_S4_FIELD startLine;
	ACCESS_S4_FIELD endLine;
}CODESCOPE_ACCESS;
extern const CODESCOPE_ACCESS stCoreCodeScpAccess;

#endif /* TABLE_CODESCOPE_H_ */
